/***************************************************************************//**
 * @file     csa37f7x_hdiv.h
 * @version  V1.0.0
 * @author   Chipsea MCU Group
 * @date     2020-09-26 PM
 * @brief    该文件包含了HDIV各功能参数的定义和函数接口声明
 * 
 * @copyright Copyright (C) 2020 Chipsea Technologies Corp. All rights reserved.
 ****************************************************************************
 * @attention
 *  硬件平台: CSA37F70 评估板V1.0 \n
 *  SDK版本： CSA37F7X_SDK_1.0.0
 * 
 * @par 修改日志:
 * <table>
 * <tr><th>Date        <th>Version  <th>Author    <th>Description
 * <tr><td>2020-09-26  <td>1.0.0    <td>Chipsea MCU Group  <td>创建初始版本
 * </table>
 *
 *****************************************************************************/

#ifndef __CSA37F7X_HDIV_H__
#define __CSA37F7X_HDIV_H__

// Include external header file.
#include "csa37f7x.h"

#ifdef __cplusplus
extern "C" {
#endif

/** @addtogroup HDIV 硬件除法器(HDIV)
  硬件除法器 (HDIV) 用来提高应用程序的效率。硬件除法器是一个有符号，整数除法器，提供商和
余数输出。<br>
###特性: 
    - 有符号 (2 的补码) 整数计算
    - 32-bit 被除数，16 位除数计算能力
    - 32-bit 商和 32-bit 余数输出 (16-bit 余数带符号扩展到 32 位)
    - 除 0 警告标志
    - 每次计算花 16 个 HCLK 时钟周期
    - 写除数触发计算
    - 当读商和余数的时候自动等待计算完成
  @{
*/


/**@brief	        硬件除法器
 *
 * @param[in]	    dividend  有符号32位被除数
 * @param[in]	    divisor  有符号16位除数
 * @param[out]	    quotient  指向商值的指针
 * @param[out]	    remainder  指向余数的指针
 * @return		    计算结果的有效性，VALID：有效; INVALID：无效。
*/
result_valid_t hdiv_quotient_read(int32_t dividend, int16_t divisor,int32_t *quotient,int32_t *remainder);


/*@}*/ /* end of group HDIV */


#ifdef __cplusplus
}
#endif

#endif  //__CSA37F7X_HDIV_H__


/*** (C) COPYRIGHT 2020 Chipsea Technologies (Shenzhen) Corp. ***/
